package org.coopac.model;

// Generated 25/05/2012 06:04:04 PM by Hibernate Tools 3.4.0.CR1

import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 * CoopacCuenta generated by hbm2java
 */
@Entity
@Table(name = "coopac_cuenta", catalog = "coopac_final")
public class CoopacCuenta implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private Integer idCuenta;
	private CoopacTipoCuenta coopacTipoCuenta;
	private CoopacSolicitud coopacSolicitud;
	private String flag;
	private String codigoCuentaCliente;
	private String fechaApertura;
	private String meses;
	private String interes;
	private String saldo;
	private String estado;
	private Set<CoopacTransaccionDeposito> coopacTransaccionDepositos = new HashSet<CoopacTransaccionDeposito>(
			0);
	private Set<CoopacPeriodoAportaciones> coopacPeriodoAportacioneses = new HashSet<CoopacPeriodoAportaciones>(
			0);

	public CoopacCuenta() {
	}

	public CoopacCuenta(CoopacTipoCuenta coopacTipoCuenta,
			CoopacSolicitud coopacSolicitud, String flag,
			String codigoCuentaCliente, String fechaApertura, String meses,
			String interes, String saldo, String estado,
			Set<CoopacTransaccionDeposito> coopacTransaccionDepositos,
			Set<CoopacPeriodoAportaciones> coopacPeriodoAportacioneses) {
		this.coopacTipoCuenta = coopacTipoCuenta;
		this.coopacSolicitud = coopacSolicitud;
		this.flag = flag;
		this.codigoCuentaCliente = codigoCuentaCliente;
		this.fechaApertura = fechaApertura;
		this.meses = meses;
		this.interes = interes;
		this.saldo = saldo;
		this.estado = estado;
		this.coopacTransaccionDepositos = coopacTransaccionDepositos;
		this.coopacPeriodoAportacioneses = coopacPeriodoAportacioneses;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "ID_CUENTA", unique = true, nullable = false)
	public Integer getIdCuenta() {
		return this.idCuenta;
	}

	public void setIdCuenta(Integer idCuenta) {
		this.idCuenta = idCuenta;
	}

	@ManyToOne 
	@JoinColumn(name = "ID_TIPO_CUENTA")
	public CoopacTipoCuenta getCoopacTipoCuenta() {
		return this.coopacTipoCuenta;
	}

	public void setCoopacTipoCuenta(CoopacTipoCuenta coopacTipoCuenta) {
		this.coopacTipoCuenta = coopacTipoCuenta;
	}

	@ManyToOne 
	@JoinColumn(name = "ID_SOLICITUD")
	public CoopacSolicitud getCoopacSolicitud() {
		return this.coopacSolicitud;
	}

	public void setCoopacSolicitud(CoopacSolicitud coopacSolicitud) {
		this.coopacSolicitud = coopacSolicitud;
	}

	@Column(name = "FLAG")
	public String getFlag() {
		return this.flag;
	}

	public void setFlag(String flag) {
		this.flag = flag;
	}

	@Column(name = "CODIGO_CUENTA_CLIENTE")
	public String getCodigoCuentaCliente() {
		return this.codigoCuentaCliente;
	}

	public void setCodigoCuentaCliente(String codigoCuentaCliente) {
		this.codigoCuentaCliente = codigoCuentaCliente;
	}

	@Column(name = "FECHA_APERTURA")
	public String getFechaApertura() {
		return this.fechaApertura;
	}

	public void setFechaApertura(String fechaApertura) {
		this.fechaApertura = fechaApertura;
	}

	@Column(name = "MESES")
	public String getMeses() {
		return this.meses;
	}

	public void setMeses(String meses) {
		this.meses = meses;
	}

	@Column(name = "INTERES")
	public String getInteres() {
		return this.interes;
	}

	public void setInteres(String interes) {
		this.interes = interes;
	}

	@Column(name = "SALDO")
	public String getSaldo() {
		return this.saldo;
	}

	public void setSaldo(String saldo) {
		this.saldo = saldo;
	}

	@Column(name = "ESTADO")
	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacCuenta")
	public Set<CoopacTransaccionDeposito> getCoopacTransaccionDepositos() {
		return this.coopacTransaccionDepositos;
	}

	public void setCoopacTransaccionDepositos(
			Set<CoopacTransaccionDeposito> coopacTransaccionDepositos) {
		this.coopacTransaccionDepositos = coopacTransaccionDepositos;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "coopacCuenta")
	public Set<CoopacPeriodoAportaciones> getCoopacPeriodoAportacioneses() {
		return this.coopacPeriodoAportacioneses;
	}

	public void setCoopacPeriodoAportacioneses(
			Set<CoopacPeriodoAportaciones> coopacPeriodoAportacioneses) {
		this.coopacPeriodoAportacioneses = coopacPeriodoAportacioneses;
	}

}
